package 装饰者.成绩的修饰;

public class Client {
    public static void main(String[] args) {
        SchoolReport forthGrade = new ForthGrade();

        forthGrade = new Decorator1(forthGrade);   // 第一次装饰
        forthGrade = new Decorator2(forthGrade);  //  第二次装饰

        forthGrade.report();
        /*
     Decorator1.reportHighScore() + ForthGrade.report() + Decorator2.reportSort()
         */

        // 经过装饰后，老爸才高兴，才签字.不装饰的话，才不会签字呢。
        forthGrade.sign();
    }
}
